package tp3;



public class ControlPolicial implements Obstaculo {
	// Para todos los vehiculos la penalizacion es de 3 movimientos, 
	// sin embargo la probabilidad de que el vehiculo quede demorado por el control y sea penalizado es de 
	// 0,3 para las 4x4, 0,5 para los autos y 0,8 para las motos ya que nunca llevan el casco puesto.

	@Override
	public boolean aplicarAAuto(Vehiculo vehiculo) {
		//Los autos tienen probabilidad de 0,5 de ser penalizados
		
		if (aplicaControl(0.5)){
			vehiculo.sumarMovimientos(3);
	
		}
		return true;
	}
	
	@Override
	public boolean aplicarAMoto(Vehiculo vehiculo) {
		//Las motos tienen probabilidad de 0,8 de ser penalizados
		
		if (aplicaControl(0.8)){
			vehiculo.sumarMovimientos(3);
		}
		return true;
	}

	@Override
	public boolean aplicarA4x4(Vehiculo vehiculo) {
		//Las 4x4 tienen probabilidad de 0,3 de ser penalizados

		if (aplicaControl(0.3)){
			vehiculo.sumarMovimientos(3);
		}
		return true;
	}
	
	private boolean aplicaControl(double probabilidad){
		int rnd =(int)(Math.random());
		return (rnd < probabilidad);
	}

	
	
	
}
